As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option available to users is information handling systems. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
One type of information handling system is a server, which is a processor-based network device that manages network resources. As examples, a file server is dedicated to storing files, a print server manages one or more printers, a network server manages network traffic, and a database server processes database queries.
The total cost of ownership associated with information handling systems generally and server systems particularly is affected by a system's management resources. In general, system management resources refer to software, hardware, and/or firmware that enable remote or automated execution of administrative tasks such as powering on, powering off, updating firmware, deploying applications, monitoring status, monitoring alerts, and so forth. The cost saving implications of systems management resources have generated a great deal of industry interest and effort in recent years.
One aspect of the systems management effort concerns standardization and, more specifically, providing a complete and standardized model of an information handling system to which all vendors and developers could adhere in the design of systems management resources and applications. The Common Information Model (CIM) is a product of this effort from the Distributed Management Task Force (DMTF). Because CIM has been adopted by many large vendors of systems, software, and management services, CIM is the most pervasive system management standard.
The DMTF describes CIM as a conceptual information model for describing management that is not bound to a particular implementation. CIM allows for the interchange of management information between management systems and applications. CIM attempts to define and organize common and consistent semantics for networking and computing equipment, and services. CIM data organization is object-oriented, supporting the concepts of inheritance, relationships, abstraction, and encapsulation to improve the quality and consistency of management data.
CIM encompasses a CIM Infrastructure Specification (also referred to simply as the CIM Specification) and a CIM Schema. Both are published electronically on the DTMF web site (http://www.dmtf.org/standards/cim) and are incorporated by reference herein. The CIM Infrastructure Specification includes a formal definition of the model and describes the language, naming, and mapping techniques to other management models such as SNMP MIBs, and DMTF MIFs etc.
The CIM Schema provides the actual model descriptions. The CIM Schema supplies a set of classes with properties and associations that provide a well-understood conceptual framework within which it is possible to organize the available information about a managed environment. The formal definition of the CIM Schema is expressed in a Managed Object File (MOF) which is an ASCII or UNICODE file that can be used as input into a MOF editor, parser, or compiler for use in an application.
The CIM Schema includes three layers, namely, the Core Schema, the Common Schema, and the Extension Schema. The Core Schema is an information model that captures notions that are applicable to all areas of management. Common Schemas are information models that capture notions that are common to particular management areas, but independent of a particular technology or implementation. Examples of common areas are systems, devices, networks, applications, and so forth. Models for these common areas define classes addressing each of the management areas in a vendor-neutral manner. Extension Schemas, in contrast, represent organizational or vendor-specific extensions of the Common Schema. Extension Schemas can be specific to environments, such as operating systems (for example, UNIX® or Microsoft Windows®).
A CIM profile, which may be specified in documents published by the DMTF or in specifications created by other organizations, defines the CIM model and associated behavior for a particular management domain implementation (including the CIM classes, associations, indications, methods and properties). A profile provides a unified way of describing the management domain in CIM.
The CIM standard schema is designed to cover every aspect of managing a computer system including hardware devices, peripherals, drivers, event indications, services, and their relationships. The CIM standard schema defines thousands of classes and associations for logical and physical modeling. A profile is a specification that defines the CIM model and associated behavior for a management domain. Profiles are typically implemented by different providers using multiple namespaces within a CIM Object Manager (CIMOM).
Instances of CIM classes are organized into namespaces. Namespaces are the partitioning mechanism employed by the CIMOM to control the scope and visibility of managed resource class definitions and instantiations. Each namespace in the CIMOM contains a logical group of related classes representing a specific technology or area of management. All classes within a namespace must have a unique class name, and classes in one namespace cannot be derived from classes in another namespace.
Vendors of various devices are free to implement their own namespaces and corresponding CIM providers. A system's CIMOM implementation may include multiple vendor namespaces. Because, however, CIM based application actions cannot act on objects in multiple namespaces simultaneously or without apriori knowledge on the part of the management application, multiple vendor namespace implementations present challenges for developers of client management applications.